package cqrtplm.service;

import cqrtplm.dto.RTCertFiledFormDTO;
import cqrtplm.dto.RTCertOAEPANewFormDTO;
import cqrtplm.dto.RTOARETDTO;
import cqrtplm.entity.RTProductDevelopmentOrderDO;
import cqrtplm.entity.RtCertFiledDO;

import java.util.List;

/**
 * 机型认证服务接口
 */
public interface RtCertFiledService {

    /**
     * 查询机型认证列表
     * @param rtCertFiled 机型认证
     * @return 机型认证集合
     */
    List<RtCertFiledDO> selectRtCertFiledList(RtCertFiledDO rtCertFiled);

    /**
     * 查询机型认证
     * @param id 机型认证ID
     * @return 机型认证
     */
    RtCertFiledDO selectRtCertFiledById(String id);

    RTCertFiledFormDTO selectRtCertFiledAllDataById(String id);

    /**
     * 根据型号查询机型认证
     * @param model 型号
     * @param ctype 证书
     * @return 机型认证
     */
    List<RtCertFiledDO> selectRtCertFiledByModelCtype(String model, String ctype) ;

    /**
     * 新增机型认证
     * @param rtCertFiled 机型认证
     * @return 结果
     */
    int insertRtCertFiled(RtCertFiledDO rtCertFiled);

    /**
     * 修改机型认证
     * @param rtCertFiled 机型认证
     * @return 结果
     */
    int updateRtCertFiled(RtCertFiledDO rtCertFiled);

    /**
     * 删除机型认证
     * @param id 机型认证ID
     * @return 结果
     */
    int deleteRtCertFiledById(String id);

    /**
     * 批量删除机型认证
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    int deleteRtCertFiledByIds(List<String> ids);

    String save(RTCertFiledFormDTO postdata);

    List<RTProductDevelopmentOrderDO> getDevCode(RTProductDevelopmentOrderDO entity);

    RTOARETDTO oasave(RTCertOAEPANewFormDTO postdata);
}